projectUrl <- "https://github.com/GranderLab/miR34a_asRNA_project/raw/master/inst/"
dataUrl <- "https://github.com/GranderLab/miR34a_asRNA_project/raw/master/data"
An antisense transcript to the miR34a HG was detected using the UCSC genome browser.
The USCS genome browser was utilized for the bioinformatic evaluation of antisense transcription at the miR34a locus.
url <- "figure1a_miR34aLocus/miR34aLocus_hg38.png"
knitr::include_graphics(file.path(projectUrl, url))
A schematic picture of the miR34a locus from the UCSC genome browser (hg38) including miR34a HG and mature miR34a, and LINC01759. H3K4me3 ChIP-seq and conservation over the locus is also shown.
GENCODE annotation supports the presence of a transcript orininating in the antisense orientation from the miR34a gene.
We wished to examine expression of miR34a asRNA in different cancer tissues and, therefore, utilized a panel of common cancer cell lines to detect miR34a asRNA expression, as well as, miR34a HG. We included both p53 wild type, p53 mutated, and p53 null cell lines in the cell line panel due to the fact that miR34a is a known downstream target of p53.
Cell culture and PCR
Cells were cultured with the appropriate growth medium and seeded at a desity between 50-75% confluency. The following day, RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. PCR was run for 35 or 38 or 16 cycles for miR34a asRNA, miR34a HG, and beta-actin, respectivley, with 58ËšC annealing temperature. PCR products were analyzed on a 2% agarose gel.
Primers
primers <- data.frame(
name=c(
"miR34a asRNA F1",
"miR34a asRNA R1",
"miR34aHG_F",
"miR34aHG_R",
"B-actin_F",
"B-actin_R"
),
sequence=c(
"AGC GGC ATC TCC TCC ACC TGA AA",
"TTG CCT CGT GAG TCC AAG GAG AAT",
"TCT GCT CCA GTG GCT GAT GAG AAA",
"GTT CAC TGG CCT CAA AGT TGG CAT",
"AGG TCA TCA CCA TTG GCA ATG AG",
"CTT TGC GGA TGT CCA CGT CA"
)
)
primers
| name | sequence |
|---|---|
| miR34a asRNA F1 | AGC GGC ATC TCC TCC ACC TGA AA |
| miR34a asRNA R1 | TTG CCT CGT GAG TCC AAG GAG AAT |
| miR34aHG_F | TCT GCT CCA GTG GCT GAT GAG AAA |
| miR34aHG_R | GTT CAC TGG CCT CAA AGT TGG CAT |
| B-actin_F | AGG TCA TCA CCA TTG GCA ATG AG |
| B-actin_R | CTT TGC GGA TGT CCA CGT CA |
url <- "figure1b_miR34aASExpressionCellPanel/cellPanelLarge.png"
knitr::include_graphics(file.path(projectUrl, url))
Semi-quantitative PCR data from the screening of a panel of cell lines. * Indicates that, although the cell line is p53wt, other mechanisms are present which inhibit p53 function.
We were able to detect co-expression of both miR34a HG and miR34a AS in a variety of cell lines, including HCT116 human colon cancer cells and 293T human embryonic kidney cells.
A graphical depiction of the TCGA correlation analysis. Bladder Urothelial Carcinoma (BLCA), Breast invasive carcinoma (BRCA), Head and Neck squamous cell carcinoma (HNSC), Lower Grade Glioma (LGG), Liver hepatocellular carcinoma (LIHC), Lung adenocarcinoma (LUAD), Lung squamous cell carcinoma (LUSC), Ovarian serous cystadenocarcinoma (OV), Prostate adenocarcinoma (PRAD), Skin Cutaneous Melanoma (SKCM), Stomach adenocarcinoma (STAD).
See Supplementary Figure 1a for R-squared and p-values corersponding with the analysis.
Insert code here from Erik and write Intro Methods etc
url <- "figure1c_TCGAcorrelation/miR34a_RP3-510D11.2_diploid_only_edited.png"
knitr::include_graphics(file.path(projectUrl, url))
url <- "suppFigure1a_TCGAcorrelationTable/table.png"
knitr::include_graphics(file.path(projectUrl, url))
R-squared and p-values from the correlation analysis investigating the correlation between miR34a and miR34a asRNA expression in p53 wild type (wt) and mutated (mut) samples within TCGA cancer types. Bladder Urothelial Carcinoma (BLCA), Breast invasive carcinoma (BRCA), Head and Neck squamous cell carcinoma (HNSC), Lower Grade Glioma (LGG), Liver hepatocellular carcinoma (LIHC), Lung adenocarcinoma (LUAD), Lung squamous cell carcinoma (LUSC), Ovarian serous cystadenocarcinoma (OV), Prostate adenocarcinoma (PRAD), Skin Cutaneous Melanoma (SKCM), Stomach adenocarcinoma (STAD).
In order to define the 3’ transcription termination site for the miR34a asRNA, 3’-RACE was performed.
Cell culture and 3-prime RACE
All cell lines were cultured at 5% CO2 and 37° C with U2OS cells grown in McCoy’s 5a (Life Technologies). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. U2OS cell RNA was polyA-tailed using yeast polyA polymerase after which cDNA was synthesized using oligo(dT) primers. Nested-PCR was performed first using a forward primer in miR34a asRNA exon 1 (miR34a_asRNA_F10) and a tailed oligo(dT) primer (polyT_T7FAM) followed by a second PCR using an alternate miR34a asRNA exon 1 primer (miR34a_asRNA_F1) and a reverse primer binding to the tail of the previously used oligo(dT) primer (FAMprimer). PCR products were gel purified and cloned the Strata Clone Kit (Agilent Technologies), and sequenced.
Primers
primers <- data.frame(
name = c("miR34a_asRNA_F10", "polyT_T7FAM", "miR34a_asRNA_F1", "FAMprimer"),
sequence = c(
"ACG CGT CTC TCC AGC CCG GGA T",
"CAG TGA ATT GTA ATA CGA CTC ACT ATA GGG ACA TCC GTA GCT CGT CCA GGA CCC TTT TTT TTT TTT TTT TTT VN",
"AGC GGC ATC TCC TCC ACC TGA AA",
"CCG TAG CTC GTC CAG GAC CC"
)
)
primers
| name | sequence |
|---|---|
| miR34a_asRNA_F10 | ACG CGT CTC TCC AGC CCG GGA T |
| polyT_T7FAM | CAG TGA ATT GTA ATA CGA CTC ACT ATA GGG ACA TCC GTA GCT CGT CCA GGA CCC TTT TTT TTT TTT TTT TTT VN |
| miR34a_asRNA_F1 | AGC GGC ATC TCC TCC ACC TGA AA |
| FAMprimer | CCG TAG CTC GTC CAG GAC CC |
url <- "figure1d_3primeRACE/results_hg38.png"
knitr::include_graphics(file.path(projectUrl, url))
3’-RACE sequencing results displayed in the UCSC genome browser together with the annotated miR34a asRNA transcript (LINC01759) from GENCODE.
Sequencing of the resulting cloned cDNA indicated the transcripts 3’ transcription termination site to be 125bp upstream of the RP3-510D11.2 transcript’s annotated termination site.
We desired to determine the 5’-start site for the miR34a asRNA.
Cell culture and PCR
To accomplish this we performed the primer walk assay. All cell lines were cultured at 5% CO2 and 37° C with HEK293T cells cultured in DMEM high glucose (Hyclone). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. PCR was performed for 35 cycles at 62°C annealing temperature and the resulting products were analyzed on a 2% agarose gel.
Primers
primers <- data.frame(
name=c(
"miR34aAS_F10",
"miR34aAS_F11",
"miR34aAS_F12",
"miR34aAS_F13",
"miR34aAS_F14",
"miR34aAS_F15",
"miR34aAS_R1"
),
sequence=c(
"ACG CGT CTC TCC AGC CCG GGA T",
"ATC TGC GTG GTC ACC GAG AAG CA",
"CGC ACG GAC TGA GAA ACA CAA G",
"ACG GAG GCT ACA CAA TTG AAC AGG",
"AGG GAA GAA AGA ACT AGC CGA GCA",
"CAT TTG CTG CAA TAT CAC CGT GGC",
"TTG CCT CGT GAG TCC AAG GAG AAT"
)
)
primers
| name | sequence |
|---|---|
| miR34aAS_F10 | ACG CGT CTC TCC AGC CCG GGA T |
| miR34aAS_F11 | ATC TGC GTG GTC ACC GAG AAG CA |
| miR34aAS_F12 | CGC ACG GAC TGA GAA ACA CAA G |
| miR34aAS_F13 | ACG GAG GCT ACA CAA TTG AAC AGG |
| miR34aAS_F14 | AGG GAA GAA AGA ACT AGC CGA GCA |
| miR34aAS_F15 | CAT TTG CTG CAA TAT CAC CGT GGC |
| miR34aAS_R1 | TTG CCT CGT GAG TCC AAG GAG AAT |
Primer placement at the locus can be viewed in Supplementary Figure 1b.
url <- "figure1e_primerWalk/gel.png"
knitr::include_graphics(file.path(projectUrl, url))
The semi-quantitative PCR results from the primer walk assay performed using HEK293T cells.
It appears as though the miR34a asRNA transcript start site is somewhat upstream of the annotated start site. Although there is some product present for the F12 primer, the majority of transcription seems to be originating from the F11 primer. This indicates that the start site is between 71-224bp upstream of the annotated start site.
url <- "suppFigure1b_primerWalkSchematic/schematic_hg38.png"
knitr::include_graphics(file.path(projectUrl, url))
A schematic picture of the miR34a asRNA locus including the location of the primers used in the primer walk assay.
We utilized a bioinformatic approach to evaluate the coding potential of the miR34a asRNA transcript. The Coding-potential assessment tool uses a linear regression model to evaluate coding-potential by examining ORF length, ORF coverage, Fickett score and hexamer score. We further confirmed these results using the Coding-potential Calculator which utilizes a support based machine-based classifier and accesses an alternate set of discriminatory features.
Protein-coding capacity was evaluated using the Coding-potential Assessment Tool and Coding-potential Calculator with default settings. Transcript sequences for use with Coding-potential Assessment Tool were downloaded from the UCSC genome browser using the following IDs: HOTAIR (ENST00000455246.1), XIST (ENST00000429829.1), β-actin (ENST00000331789.5), Tubulin (ENST00000427480.1), and MYC (ENST00000377970). Transcript sequences for use with Coding-potential Calculator were downloaded from the UCSC genome browser using the following IDs: HOTAIR (uc031qho.1), β-actin (uc003soq.4).
Coding Potential Assesment Tool
url <- "figure1f_codingPotentialCPAT/results.txt"
cpat <-read.table(url(file.path(projectUrl, url)), header = TRUE, sep = "\t")
cpat
| sequenceName | RNAsize | ORFsize | FicketScore | hexamerScore | codingProbability | codingLabel |
|---|---|---|---|---|---|---|
| miR34a asRNA | 795 | 285 | 0.801 | 0.258 | 0.301 | no |
| HOTAIR | 918 | 144 | 0.919 | 0.268 | 0.126 | no |
| XIST | 19280 | 411 | 0.663 | -0.128 | 0.027 | no |
| β-actin | 1917 | 1128 | 1.350 | 0.698 | 1.000 | yes |
| Tubulin | 2632 | 1119 | 1.277 | 0.515 | 1.000 | yes |
| MYC | 2345 | 1320 | 1.223 | 0.484 | 1.000 | yes |
Coding potential analysis results from the Coding-potential Assessment Tool including miR34a asRNA and two characterized non-coding transcripts (HOTAIR and XIST) and 3 known coding transcripts (β-actin, tubulin, and MYC).
Results for Coding-potential Calculator are located in Supplementary figure 1g below.
Results indicated that miR34a asRNA has a similar lack of coding capacity to the known non-coding transcripts HOTAIR and XIST and differs greatly when examining these parameters to the known coding transcripts beta-actin, tubulin, and MYC. However, to fully evaluate coding potential methods such as mass spectrometry or ribosome profiling must be used.
For introduction and methods please see Figure 1f.
url <- "suppFigure1g_codingPotentialCPC/results.txt"
cpc <- read.table(url(file.path(projectUrl, url)), header = TRUE, sep = "\t")
cpc
| Transcript.name | Coding | Coding.Potential.Score | Hit.number | Hit.score | Frame.score | Length | Coverage…. | Log.Odds.score | Type |
|---|---|---|---|---|---|---|---|---|---|
| HOTAIR | noncoding | -1.187350 | 0 | 0.0000 | 0.00000 | 319 | 13.43 | 32.91 | full |
| miR34a asRNA | noncoding (weak) | -0.883468 | 0 | 0.0000 | 0.00000 | 175 | 21.89 | 42.47 | full |
| β-actin | coding | 13.662000 | 250 | 181.3849 | 34.26889 | 1167 | 62.82 | 229.54 | full |
Coding potential analysis results using the Coding-potential calculator for miR34a asRNA, HOTAIR, and β-actin.
We desired to access the polyadenylation status of the miR34a asRNA transcript.
Cell culture and PCR All cell lines were cultured at 5% CO2 and 37° C with HEK293T cells cultured in DMEM high glucose (Hyclone). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. PCR was then performed and the results analyzed on a 2% agarose gel.
Primers
primers <- data.frame(
name=c(
"miR34aAS_F1",
"miR34aAS_R1",
"miR34aHG_F",
"miR34aHG_R",
"B-actin_F",
"B-actin_R",
"U48_F",
"U48_R"
),
sequence=c(
"AGC GGC ATC TCC TCC ACC TGA AA",
"TTG CCT CGT GAG TCC AAG GAG AAT",
"TCT GCT CCA GTG GCT GAT GAG AAA",
"GTT CAC TGG CCT CAA AGT TGG CAT",
"AGG TCA TCA CCA TTG GCA ATG AG",
"CTT TGC GGA TGT CCA CGT CA",
"AGT GAT GAT GAC CCC AGG TA",
"GGT CAG AGC GCT GCG GTG AT"
)
)
primers
| name | sequence |
|---|---|
| miR34aAS_F1 | AGC GGC ATC TCC TCC ACC TGA AA |
| miR34aAS_R1 | TTG CCT CGT GAG TCC AAG GAG AAT |
| miR34aHG_F | TCT GCT CCA GTG GCT GAT GAG AAA |
| miR34aHG_R | GTT CAC TGG CCT CAA AGT TGG CAT |
| B-actin_F | AGG TCA TCA CCA TTG GCA ATG AG |
| B-actin_R | CTT TGC GGA TGT CCA CGT CA |
| U48_F | AGT GAT GAT GAC CCC AGG TA |
| U48_R | GGT CAG AGC GCT GCG GTG AT |
url <- "suppFigure1c_polyadenylation/polyadenylation.png"
knitr::include_graphics(file.path(projectUrl, url))
Polyadenylation status of spliced and unspliced miR34a asRNA in HEK293T cells.
Results indicate that miR34a asRNA is polyadenylated.
We investigated the propensity of miR34a asRNA to be alternatively spliced, using PCR cloning and sequencing.
Cell culture and cloning
All cell lines were cultured at 5% CO2 and 37° C with U2OS cells cultured in McCoy’s 5a (Life Technologies), . All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. PCR was performed with the specified primer sets with annealing temperature 60˚C unless otherwise indicated. PCR was run for 35 cycles for those primer sets with annealing temperature 60˚C and 40 cycles in other cases. Resulting PCR products were run on a agarose gel, gel extracted with the QIAquick gel extraction kit (Qiagen), cloned using the Strata Cloning kit (Agilent), and sequenced. The sequencing results were visualized in the UCSC genome browser.
Primers
primers <- data.frame(
name=c(
"F12",
"R1",
"R2",
"R3",
"Ex3R1"
),
sequence=c(
"AAACACAAGCGTTTACCTGGGTGC",
"TTGCCTCGTGAGTCCAAGGAGAAT",
"ATAGGTTCATTTGCCCGATGTGCC",
"CCACAGCTGTTGCTTCTGAATGCT",
"TCAGATAGGTACCAAAAATGATGGCCGCAACTAATGACGGAT"
)
)
primers
| name | sequence |
|---|---|
| F12 | AAACACAAGCGTTTACCTGGGTGC |
| R1 | TTGCCTCGTGAGTCCAAGGAGAAT |
| R2 | ATAGGTTCATTTGCCCGATGTGCC |
| R3 | CCACAGCTGTTGCTTCTGAATGCT |
| Ex3R1 | TCAGATAGGTACCAAAAATGATGGCCGCAACTAATGACGGAT |
url <- "suppFigure1d_isoforms/isoforms.png"
knitr::include_graphics(file.path(projectUrl, url))
Sequencing results from the analysis of miR34a asRNA isoforms in U2OS cells. miR34a AS ref. refers to the full length transcript as defined by the 3’-RACE and primer walk assay.
Results indicate that the miR34a asRNA transcript is post-transcriptionally spliced to form several different isoforms.
asRNAs are known to be capable of exerting regulatory functions on both a transcriptional and post-transcriptional level and therefore, the cellular localization of the asRNA can be informative concerning the method of regulation.
Cell culture and QPCR
All cell lines were cultured at 5% CO2 and 37° C with HEK293T cells cultured in DMEM high glucose (Hyclone). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. Cells were plated at 300,000 cells per well in a 6-well plate and cultured overnight. Fractionation was performed using the PARIS kit according to the manufacturer’s recommendations (Life Technologies). 0.5ul RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s.
Analysis
QPCR was performed in technical replicate for each sample. Technical mean values were subsequently moved to the linear scale by raising their additive inverse to the power of 2. The percentage in each cellular fraction fraction was then calculated by dividing each individual fraction for a specific gene by the total of all fractions for that gene and multiplying by 100. The experiment was performed in one independant experiment.
QPCR primers
primers <- data.frame(
name=c(
"ß-actin Fwd",
"ß-actin Rev",
"miR34a HG_F",
"miR34a HG_R",
"miR34a_asF1",
"miR34a_asR1",
"U48_F",
"U48_R"
),
sequence=c(
"AGG TCA TCA CCA TTG GCA ATG AG",
"CTT TCG GGA TGT CCA CGT CA",
"TCT GCT CCA GTG GCT GAT GAG AAA",
"GTT CAC TGG CCT CAA AGT TGG CAT",
"AGC GGC ATC TCC TCC ACC TGA AA",
"TTG CCT CGT GAG TCC AAG GAG AAT",
"AGT GAT GAT GAC CCC AGG TA",
"GGT CAG AGC GCT GCG GTG AT"
)
)
primers
| name | sequence |
|---|---|
| ß-actin Fwd | AGG TCA TCA CCA TTG GCA ATG AG |
| ß-actin Rev | CTT TCG GGA TGT CCA CGT CA |
| miR34a HG_F | TCT GCT CCA GTG GCT GAT GAG AAA |
| miR34a HG_R | GTT CAC TGG CCT CAA AGT TGG CAT |
| miR34a_asF1 | AGC GGC ATC TCC TCC ACC TGA AA |
| miR34a_asR1 | TTG CCT CGT GAG TCC AAG GAG AAT |
| U48_F | AGT GAT GAT GAC CCC AGG TA |
| U48_R | GGT CAG AGC GCT GCG GTG AT |
url <- "suppFigure1e_cellularLocalization.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#calculate dct
groups <- c("fraction", "Cell line", "gene")
gois <- c("miR34a\nasRNA", "miR34a\nHG")
data <- data %>%
technicalMeans(., groups) %>%
mutate(antiLog = 2^-ctMean) %>%
group_by(gene) %>%
mutate(
total = sum(antiLog),
percent = 100 * (antiLog / total)
)
p <- ggplot(data = NULL) +
geom_bar(
data = data,
aes(
x = gene,
y = percent,
fill = fraction
),
position = "fill",
stat = "identity",
alpha = 0.6
) +
labs(
x = "Gene",
y = "",
title = "miR34a asRNA cellular localization"
) +
scale_y_continuous(labels = scales::percent_format()) +
guides(fill = guide_legend(title = "Fraction", override.aes = list(size = 3)))
plotRmarkdown(p)
Q-PCR results from fractionated HEK293T cells investigating the cellular localization of the miR34a asRNA transcript.
Semi-quantitative PCR revealed that the miR34a asRNA transcript localizes to both the nucleus and cytoplasm although the majority is located in the cytoplasmic fraction.
We desired to deduce the relative stability of the miR34a asRNA and HG transcripts.
Cell culture and QPCR
All cell lines were cultured at 5% CO2 and 37° C with U2OS cells grown in McCoy’s 5a (Life Technologies). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. Cells were treated with 10nM actinomycin D (Sigma) for the indicated times. RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s.
Analysis
QPCR was performed with technical replicates for each sample. Delta ct was calculated by subtracting the mean of the technical replicates for each sample from the mean of the technical replicates for the house keeping gene for the corresponding sample. Delta-delta ct was subsequently calculated by subtracting the delta ct values for the no treatment sample from the delat ct values for each individual sample. The experiment was performed in two independant experiments which are shown individually in the plot below. 95% confidence interval was calculated for each gene and treatment time point using the values obtained from each independant experiment.
Primers
primers <- data.frame(
name=c(
"ß-actin Fwd",
"ß-actin Rev",
"miR34a HG_F",
"miR34a HG_R",
"miR34a_asF1",
"miR34a_asR1"
),
sequence=c(
"AGGTCATCACCATTGGCAATGAG",
"CTTTCGGGATGTCCACGTCA",
"TCTGCTCCAGTGGCTGATGAGAAA",
"GTTCACTGGCCTCAAAGTTGGCAT",
"AGCGGCATCTCCTCCACCTGAAA",
"TTGCCTCGTGAGTCCAAGGAGAAT"
)
)
primers
| name | sequence |
|---|---|
| ß-actin Fwd | AGGTCATCACCATTGGCAATGAG |
| ß-actin Rev | CTTTCGGGATGTCCACGTCA |
| miR34a HG_F | TCTGCTCCAGTGGCTGATGAGAAA |
| miR34a HG_R | GTTCACTGGCCTCAAAGTTGGCAT |
| miR34a_asF1 | AGCGGCATCTCCTCCACCTGAAA |
| miR34a_asR1 | TTGCCTCGTGAGTCCAAGGAGAAT |
url <- "suppFigure1f_transcriptStability.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#calculate dct
groups <- c("treatment", "Biological Replicate", "gene")
gois <- c("miR34a asRNA", "miR34a HG")
data <- technicalMeans(data, groups) %>%
dct(., gois, Actin, groups, F)
#calculate ddct
groups[groups == "gene"] <- "GOI"
logical <- tibble(
treatment = data$treatment == 0
)
data <- data %>%
ddct(., logical, groups, F) %>%
folds(.)
#calculate stats
stats <- data %>%
group_by(GOI, treatment) %>%
summarize(mean = mean(log2fold), sd = sd(log2fold)) %>%
ungroup()
p <- ggplot(data = NULL)+
geom_point(
data = data,
aes(
x = treatment,
y = log2fold,
colour = GOI
),
fill = "white",
size = 4,
alpha = 0.6,
position = position_dodge(width = 0.9)
) +
geom_linerange(
data = stats,
aes(
x = treatment,
ymin = mean - sd,
ymax = mean + sd,
group = GOI
),
colour = "black",
position = position_dodge(width = 0.9),
show.legend = FALSE
) +
geom_point(
data = stats,
aes(
x = treatment,
y = mean,
group = GOI
),
colour = "black",
position = position_dodge(width = 0.9),
show.legend = FALSE,
shape = 95,
size = 6
) +
scale_y_continuous("\u0394\u0394Ct") +
labs(
x = "Treatment (hours)",
title = "miR34a asRNA and HG stability"
) +
guides(color = guide_legend(title = "Gene", override.aes = list(size = 3)))
plotRmarkdown(p)
Q-PCR showing miR34a asRNA and miR34a HG levels in U2OS cells after treatment with 10nM actinomycin D. The points represent the values obtained from each independant experiment (n = 2). 95% confidence interval (vertical black lines) and mean (horizontal black lines) are also shown.
While the levels of miR34a HG fall quickly over the 4 hour treatment period, levels of miR34a asRNA remain relativley stable.
miR34a is a known downstream target of p53 and has been previously shown to exhibit increased expression upon cellular apoptotic signaling. We hypothesized that miR34a asRNA may be regulated in a similar fashion whereby transcription is stimulated by activation of p53. To test this we treated p53 wild type and p53 null HCT116 cells with increasing concentrations of the DNA damaging agent doxorubicin and monitored miR34a asRNA expression.
Cell culture and QPCR
HCT116 cells were cultured in DMEM high modified (Hyclone, GE healthcare) supplemented with supplemented with 2mM L-glutamine, 50ug/ml Penicillin-Streptomycin and 10% Fetal Calf Serum. 25 x 10^5 HCT116 cells were plated in 6 well plates. 24 hours later media was exchanged and doxorubicin was added to a final concentration of 100, 200 or 500 ng/ml. Cells were harvested for RNA extraction 24 hours later using trypsin. RNA was extracted using Nucleospin RNA kit (Machery-Nagel Ref. 740955) according to manufacturer‟s protocol and DNase treated using Ambion Turbo DNA-free according to manufacturer‟s protocol (Life Technologies Ref. AM1907). cDNA was synthesized using ~500 ng RNA with M-MLV (Life Technologies Ref 28025013) and a mixture of oligo(dT) with nanomers in accordance with the manufacturer’s protocol. qPCR quantification was carried out using the PowerUp SYBR Green Master Mix (Thermo Fisher Scientific, Ref. A25777) on the CFX96 Touch Real-Time PCR Detection System: 50°C for 2 min, 95°C for 2min, and 95°C for 1 sec followed by 60°C for 30 sec repeated for 40 cycles. qPCR primers are shown below.
Analysis
Two experimental (technical) replicates were included in each QPCR run and delta ct was calculated for each sample using the mean of the gene of interest’s technical replicates and the house keeping gene’s technical replicates. Delta-delta ct was calculated for each sample by subtracting the median dct value for the corresponding untreated samples. Three independant experiments (biological replicates) were performed in total. The Student’s t-test was used to compare the p-53 wild type and p-53 null group’s delta-delta ct values in each treatment concentration and for both genes.
Primers
primers <- data.frame(
name=c(
"ß-actin Fwd",
"ß-actin Rev",
"miR34a HG_F",
"miR34a HG_R",
"miR34a_asF1",
"miR34a_asR1"
),
sequence=c(
"AGGTCATCACCATTGGCAATGAG",
"CTTTCGGGATGTCCACGTCA",
"TCTGCTCCAGTGGCTGATGAGAAA",
"GTTCACTGGCCTCAAAGTTGGCAT",
"AGCGGCATCTCCTCCACCTGAAA",
"TTGCCTCGTGAGTCCAAGGAGAAT"
)
)
primers
| name | sequence |
|---|---|
| ß-actin Fwd | AGGTCATCACCATTGGCAATGAG |
| ß-actin Rev | CTTTCGGGATGTCCACGTCA |
| miR34a HG_F | TCTGCTCCAGTGGCTGATGAGAAA |
| miR34a HG_R | GTTCACTGGCCTCAAAGTTGGCAT |
| miR34a_asF1 | AGCGGCATCTCCTCCACCTGAAA |
| miR34a_asR1 | TTGCCTCGTGAGTCCAAGGAGAAT |
url <- "figure2a_HCT116p53null.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#calculate dct
groups <- c("Condition", "Treatment", "Biological Replicate", "Cell line", "gene")
gois <- c("miR34a asRNA", "miR34a HG")
data <- technicalMeans(data, groups) %>%
dct(., gois, Actin, groups)
#calculate ddct
groups[groups == "gene"] <- "GOI"
logical <- tibble(
Treatment = data$Treatment == 0
)
data <- data %>%
ddct(., logical, groups) %>%
folds(.)
#calculate stats
stats <- calcStats(data, Condition, "HCT116 p53-wt", groups) %>%
pFormat(.)
#setup plotting variables
stats <- stats %>%
group_by(GOI, Treatment) %>%
mutate(
max = max(CI95h),
x = case_when(
Treatment == 0 ~ 1 + 0.25,
Treatment == 100 ~ 2 + 0.25,
Treatment == 200 ~ 3 + 0.25,
Treatment == 500 ~ 4 + 0.25
),
xend = case_when(
Treatment == 0 ~ 1 - 0.25,
Treatment == 100 ~ 2 - 0.25,
Treatment == 200 ~ 3 - 0.25,
Treatment == 500 ~ 4 - 0.25
)
) %>%
ungroup()
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = Treatment,
y = log2fold,
group = interaction(Condition, Treatment)
),
trim = TRUE,
alpha = 0.3,
fill = "gray",
colour = NA,
scale = "width",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(x = Treatment, y = log2fold, fill = Condition),
colour = NA,
binwidth = 1/10,
alpha = 0.5,
position = position_dodge(width = 0.9),
binaxis='y',
stackdir='center',
dotsize = 2,
show.legend = TRUE
) +
geom_point(
data = stats,
aes(x = Treatment, y = mean, group = Condition),
position = position_dodge(width = 0.9),
colour = "gray20",
size = 6,
shape = 95
) +
facet_grid(. ~ GOI) +
geom_linerange(
data = stats,
aes(x = Treatment, ymin = CI95l, ymax = CI95h, group = Condition),
colour = "gray20",
position = position_dodge(width = 0.9),
show.legend = FALSE
) +
geom_label(
data = stats,
aes(x = Treatment, y = max + 0.28, label = pFormat),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
fill = "white",
size = 5,
family = "Arial Unicode MS",
position = position_dodge(width = 0.9)
) +
geom_segment(
data = stats,
aes(x = x, y = max + 0.1, xend = xend, yend = max + 0.1),
colour="grey43",
show.legend = FALSE
) +
scale_y_continuous("\u0394\u0394Ct", breaks = c(-1,0,1,2,3,4,5))+
labs(
x = "Treatment",
title = "miR34a asRNA regulation by p53 induction"
) +
guides(
fill = guide_legend(title = "Cell line", override.aes = list(size = 6))
)
plotRmarkdown(p)
Monitoring the effects of 24 hours doxorubicin treatment on miR34a asRNA and HG in P53+/+ and p53-/- HCT116 cells. The points represent the values obtained from each independant experiment (n = 3) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
We observed increasing miR34a HG and asRNA expression with increasing doses of doxorubicin indicating that these two transcripts are co-regulated by p53. Although p53 wild type cells showed a 25-fold increase over untreated cells in miR34a AS expression at the highest tested doxorubicin concentration, this effect was largely abrogated, 11 fold over untreated, in p53 null cells, indicating that p53 is a major regulator of miR34a asRNA expression.
miR34a is a known downstream target of p53 and has been previously shown to exhibit increased expression with cellular apoptotic signaling. We hypothesized that miR34a asRNA may be regulated in a similar fashion whereby transcription is stimulated by activation of p53. To test this we treated HCT116 and HEK293t cells with 200 ng/ml of the DNA damaging agent doxorubicin for 24 hours and monitored miR34a asRNA expression.
Cell culture and QPCR
All cell lines were cultured at 5% CO2 and 37° C with HEK293T cells cultured in DMEM high glucose (Hyclone) and HCT116 cells in McCoy’s 5a (Life Technologies). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. Cells were plated at 300,000 cells per well in a 6-well plate and cultured overnight. The following day cells were treated with 0, 100, 200, or 500 ng/ml doxorubicin for 24hrs. RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s. qPCR primers are shown below.
Analysis
Two experimental (technical) replicates were included in each QPCR run and delta ct was calculated for each sample using the mean of the gene of interest’s technical replicates and the house keeping gene’s technical replicates. delta-delta ct was calculated for each sample by subtracting the median dct value for the corresponding untreated samples. Three independant experiments (biological replicates) were performed in total. The Student’s t-test was used to compare the treated vs untreated group’s delta-delta ct values for both genes.
Primers
primers <- data.frame(
name=c(
"ß-actin Fwd",
"ß-actin Rev",
"miR34a HG_F",
"miR34a HG_R",
"miR34a_asF1",
"miR34a_asR1"
),
sequence=c(
"AGGTCATCACCATTGGCAATGAG",
"CTTTCGGGATGTCCACGTCA",
"TCTGCTCCAGTGGCTGATGAGAAA",
"GTTCACTGGCCTCAAAGTTGGCAT",
"AGCGGCATCTCCTCCACCTGAAA",
"TTGCCTCGTGAGTCCAAGGAGAAT"
)
)
primers
| name | sequence |
|---|---|
| ß-actin Fwd | AGGTCATCACCATTGGCAATGAG |
| ß-actin Rev | CTTTCGGGATGTCCACGTCA |
| miR34a HG_F | TCTGCTCCAGTGGCTGATGAGAAA |
| miR34a HG_R | GTTCACTGGCCTCAAAGTTGGCAT |
| miR34a_asF1 | AGCGGCATCTCCTCCACCTGAAA |
| miR34a_asR1 | TTGCCTCGTGAGTCCAAGGAGAAT |
url <- "figure2b_HctHekDox.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#calculate dct
groups <- c("Treatment", "Biological Replicate", "Cell line", "gene")
gois <- c("miR34a asRNA", "miR34a HG")
data <- technicalMeans(data, groups) %>%
dct(., gois, Actin, groups)
#calculate ddct
groups[groups == "gene"] <- "GOI"
logical <- tibble(
`Biological Replicate` = pull(data, `Biological Replicate`) == 1,
Treatment = pull(data, Treatment) == "untreated"
)
data <- data %>%
ddct(., logical, groups) %>%
folds(.)
#calculate stats
stats <- calcStats(data, Treatment, "untreated", groups) %>%
pFormat(.)
#prepare for plotting
#vertical lines and labels
vl <- stats %>%
group_by(`Cell line`, GOI) %>%
summarize(
max = max(CI95h),
pValue = as.numeric(min(pValue))
) %>%
ungroup() %>%
pFormat(.) %>%
mutate(
x = case_when(
GOI == "miR34a asRNA" ~ 1 - 0.25,
GOI == "miR34a HG" ~ 1 + 0.25
),
xend = case_when(
GOI == "miR34a asRNA" ~ 2 - 0.25,
GOI == "miR34a HG" ~ 2 + 0.25
),
pFormat = pFormat,
labelX = 1.5
)
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = Treatment,
y = log2fold,
group = interaction(GOI, Treatment)
),
trim = TRUE,
fill = "gray",
alpha = 0.3,
color = NA,
scale = "width",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = Treatment,
y = log2fold,
fill = GOI
),
binwidth = 1/10,
colour = NA,
alpha = 0.5,
position = position_dodge(width = 0.9),
binaxis='y',
stackdir='center',
dotsize = 2,
show.legend = TRUE
) +
geom_point(
data = stats,
aes(
x = Treatment,
y = mean,
group = GOI
),
size = 6,
position = position_dodge(width = 0.9),
show.legend = FALSE,
shape = 95,
colour = "gray20"
) +
facet_grid(. ~ `Cell line`) +
geom_linerange(
data = stats,
aes(
x = Treatment,
ymin = CI95l,
ymax = CI95h,
group = GOI
),
colour = "gray20",
position = position_dodge(width = 0.9),
show.legend = FALSE
) +
geom_label(
data = vl,
aes(
x = labelX,
y = max + 0.25,
label = pFormat,
group = GOI
),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
fill = "white",
size = 5,
family = "Arial Unicode MS",
position = position_dodge(width = 0.9)
) +
geom_segment(
data = vl,
aes(
x = x,
y = max + 0.1,
xend = xend,
yend = max + 0.1,
group = GOI
),
colour="grey43",
show.legend = FALSE
) +
scale_y_continuous(
"\u0394\u0394Ct",
breaks=c(-1,0,1,2,3,4,5)
) +
labs(
x = "Treatment",
title = "miR34a asRNA response to p53 induction"
) +
guides(
fill = guide_legend(title = "Gene", override.aes = list(size = 6))
)
plotRmarkdown(p)
Q-PCR showing miR34a asRNA and miR34a HG levels in HCT116 and HEK293t cells after treatment with 200 ng/ml doxorubicin for 24hrs. The points represent the values obtained from each independant experiment (n = 3) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
We observed increases in miR34a HG and asRNA expression upon doxorubicin treatment indicating that these two transcripts are co-regulated.
It is likely, due to the head-to head orientation of miR34a HG and asRNA, that transcription initiation may be activated from a single promoter in a bi-directional manner. To investigate whether miR34a HG and asRNA are transcribed from the same promoter as convergent transcripts, we cloned the miR34a HG promoter, including the p53 binding site, into a luciferase/renilla dual reporter vector which we hereafter refer to as p1. The p1 sequence was previously published in Raver-Shapira, N., et al., Transcriptional activation of miR-34a contributes to p53-mediated apoptosis. Mol Cell, 2007. 26(5): p. 731-43.
Cell culture, transfection and luminescence quantification
All cell lines were cultured at 5% CO2 and 37° C with HEK293T cells cultured in DMEM high glucose (Hyclone) and HCT116 cells in McCoy’s 5a (Life Technologies). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. Cells were plated at 10,000 cells per well in a 96-well plate with a white bottom and cultured overnight. The following day cells were co-transfected with 10ng of empty, p1, or p2 plasmid and GFP using the standard lipofektamine 2000 (Life Technologies) protocol. The expression of GFP and luminescence was measured 24 h post transfection by using the Dual-Glo Luciferase Assay System (Promega) and detected by the GloMax-Multi+ Detection System (Promega). The expression of luminescence was normalized to GFP.
Analysis
Three independant experiments (biological replicates) were performed in total. The Student’s t-test was used to compare the empty vs p1 group’s log2 activity for both genes.
Constructs
ps <- data.frame(
name = c("p1"),
sequence = c("GCG CCC TGC CTG GCC CCC ACC TGG TCC TCT TTC CTT TTC AGG TGG AGG AGA TGC CGC TGT
CCC GTC GGT CTG GGG ACA GCC CAG CTC CCC GGA TCC CGG GCT GGA GAG ACG CGT CGC GGC
CCC GGG GCC TGG TGG CAC GAG CAG GAA GGA GGA CCC GGC GGC GGG CTC TGC CTG GGC TTG
CCT GGG CTT GTT CCG AGC CGG GCT GCT TCT CGG TGA CCA CGC AGA TCG GGG GCA TTT GGA
GAT TTT GCG GGA GTC CTG CAG CCA AGC TCC GGG GCA GGA GAG GCC TGG AAG CCT GCA CTA
CCT GCT C"
)
)
ps
| name | sequence |
|---|---|
| p1 | GCG CCC TGC CTG GCC CCC ACC TGG TCC TCT TTC CTT TTC AGG TGG AGG AGA TGC CGC TGT |
| CCC GTC GGT CTG GGG ACA GCC CAG CTC CCC GGA TCC CGG GCT GGA GAG ACG CGT CGC GGC | |
| CCC GGG GCC TGG TGG CAC GAG CAG GAA GGA GGA CCC GGC GGC GGG CTC TGC CTG GGC TTG | |
| CCT GGG CTT GTT CCG AGC CGG GCT GCT TCT CGG TGA CCA CGC AGA TCG GGG GCA TTT GGA | |
| GAT TTT GCG GGA GTC CTG CAG CCA AGC TCC GGG GCA GGA GAG GCC TGG AAG CCT GCA CTA | |
| CCT GCT C |
Primers
primers <- data.frame(
name=c(
"Luc_set_II_F",
"Luc_set_II_R",
"Renilla_pBiDir_F1",
"Renilla_pBiDir_R1",
"B-actin_F",
"B-actin_R"
),
sequence=c(
"AAG ATT CAA AGT GCG CTG CTG",
"TTG CCT GAT ACC TGG CAG ATG",
"TAA CGC GGC CTC TTC TTA TTT",
"GAT TTG CCT GAT TTG CCC ATA",
"AGG TCA TCA CCA TTG GCA ATG AG",
"CTT TGC GGA TGT CCA CGT CA"
)
)
primers
| name | sequence |
|---|---|
| Luc_set_II_F | AAG ATT CAA AGT GCG CTG CTG |
| Luc_set_II_R | TTG CCT GAT ACC TGG CAG ATG |
| Renilla_pBiDir_F1 | TAA CGC GGC CTC TTC TTA TTT |
| Renilla_pBiDir_R1 | GAT TTG CCT GAT TTG CCC ATA |
| B-actin_F | AGG TCA TCA CCA TTG GCA ATG AG |
| B-actin_R | CTT TGC GGA TGT CCA CGT CA |
url <- "figure2c_P1construct/locusSimple.png"
knitr::include_graphics(file.path(projectUrl, url))
A schematic representation of the miR34a locus and the region cloned in the P1 construct including the overlapping region between miR34a host gene (purple) and miR34a asRNA (green), the region cloned into the P1 construct (red), and the P53 binding site (light blue).
url <- "figure2c_P1construct/constructSimple.png"
knitr::include_graphics(file.path(projectUrl, url))
A schematic representation of the fully cloned P1 construct including the overlapping region between miR34a host gene and miR34a asRNA (green), the reported genes, luciferase (purple) and renilla (red), the primer binding sites, and the shRNA binding site (used in Figure 2d).
url <- "figure2d_P1-HCTandHEK.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
.calcP <- function(`Cell line`, gene, logValue, data) {
bool1 <- pull(data, `Cell line`) == `Cell line`
bool2 <- pull(data, gene) == gene
bool3 <- pull(data, construct) == "Empty"
bool <- bool1 & bool2 & bool3
t.test(logValue, pull(data, logValue)[bool])$p.value
}
data <- data %>%
mutate(logValue = log2(value))
stats <- data %>%
group_by(`construct`, `Cell line`, gene) %>%
summarize(
n = n(),
mean = mean(logValue),
CI95l = t.test(logValue)$conf.int[1],
CI95h = t.test(logValue)$conf.int[2],
pValue = .calcP(`Cell line`, gene, logValue, data)
) %>%
ungroup() %>%
pFormat(.)
#vertical lines and labels in plot
ys <- stats %>%
group_by(`Cell line`) %>%
summarize(max = max(CI95h))
vl <- stats %>%
group_by(`Cell line`, gene) %>%
summarize(
pValue = as.numeric(min(pValue))
) %>%
ungroup() %>%
pFormat(.) %>%
mutate(
x = case_when(
gene == "Renilla" ~ 1 + 0.25,
gene == "Luciferase" ~ 1 - 0.25
),
xend = case_when(
gene == "Renilla" ~ 2 + 0.25,
gene == "Luciferase" ~ 2 - 0.25
),
pFormat = pFormat
) %>%
left_join(ys) %>%
mutate(max = max + c(0.25, 1, 0.25, 1))
#fix gene labels
data <- data %>%
mutate(plotGene = case_when(
gene == "Luciferase" ~ " Luciferase\n(miR34a HG)",
gene == "Renilla" ~ " Renilla\n(miR34a asRNA)",
TRUE ~ "somehow missed a gene"
))
stats <- stats %>%
mutate(plotGene = case_when(
gene == "Luciferase" ~ " Luciferase\n(miR34a HG)",
gene == "Renilla" ~ " Renilla\n(miR34a asRNA)",
TRUE ~ "somehow missed a gene"
))
vl <- vl %>%
mutate(plotGene = case_when(
gene == "Luciferase" ~ " Luciferase\n(miR34a HG)",
gene == "Renilla" ~ " Renilla\n(miR34a asRNA)",
TRUE ~ "somehow missed a gene"
))
data <- filter(data, construct %in% c("p1", "Empty"))
stats <- filter(stats, construct %in% c("p1", "Empty"))
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = construct,
y = logValue,
group = interaction(construct, plotGene)
),
trim = TRUE,
alpha = 0.3,
fill = "gray",
color = NA,
scale = "width",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = construct,
y = logValue,
fill = plotGene
),
binwidth = 1/10,
alpha = 0.5,
colour = NA,
position = position_dodge(width = 0.9),
binaxis = 'y',
stackdir = 'center',
dotsize = 2,
show.legend = TRUE
) +
facet_grid(. ~ `Cell line`) +
geom_linerange(
data = stats,
aes(
x = construct,
ymin = CI95l,
ymax = CI95h,
group = plotGene
),
colour = "grey20",
position = position_dodge(width = 0.9),
show.legend = FALSE
) +
geom_point(
data = stats,
aes(
x = construct,
y = mean,
group = plotGene
),
position = position_dodge(width = 0.9),
show.legend = FALSE,
colour = "gray20",
size = 6,
shape = 95
) +
geom_label(
data = vl,
aes(
x = 1.5,
y = max + 0.25,
label = pFormat,
group = gene
),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
fill = "white",
size = 5,
family = "Arial Unicode MS",
position = position_dodge(width = 0.9)
) +
geom_segment(
data = vl,
aes(
x = x,
y = max,
xend = xend,
yend = max
),
colour = "grey43",
show.legend = FALSE
) +
labs(
x = "Construct",
y = "log2 activity (a.u.)",
title = "miR34a asRNA regulation by miR34a promoter"
) +
guides(
fill = guide_legend(title = "Gene", override.aes = list(size = 6))
)
plotRmarkdown(p)
miR34a asRNA and miR34a HG levels in HCT116 and HEK293t cells after transfection with P1 or empty constructs. Luciferase represents miR34a HG and renilla represents miR34a asRNA. The points represent the values obtained from each independant experiment (n = 3) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
Upon transfection of this construct in two separate cell lines we observed increases in both luciferase and renilla indicating that miR34a HG and asRNA expression is regulated by a single promoter contained within the p1 construct. Transfection of the P2 construct showed to cause a reduction in luciferase (miR34a HG) levels but not renilla (miR34a AS) levels. This could be due to the presence of a STAT3 binding site in p2 which has been previously reported to negativley regulate miR34a HG.
Our previous results showed that miR34a HG and asRNA are simultaneously up-regulated in response to doxorubicin treatment leading us to consider the possibility that miR34a asRNA may be necessary for an appropriate miR34a response to apoptotic signaling. To explore this possibility we again utilized the p1 construct, co-transfecting it with an shRNA targeting renilla, and treating HCT116 cells with increasing levels of doxorubicin.
Cell culture, treatment, and QPCR
We utilized the P1 construct where the overlapping region of miR34a HG and miR34a AS is cloned with luciferase downstream of miR34a HG and renilla downstream of miR34a AS. The p1 sequence was previously published in Raver-Shapira, N., et al., Transcriptional activation of miR-34a contributes to p53-mediated apoptosis. Mol Cell, 2007. 26(5): p. 731-43. All cell lines were cultured at 5% CO2 and 37° C with HCT116 cells cultured in McCoy’s 5a (Life Technologies). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. 2.5x10^5 HCT116wt cells were seeded in a 12-well plate. After 24hrs these were co-transfected with the P1 construct (25ng) and shRenilla2.1 (250ng) using lipo2000 (Life Technologies) standard protocol. 24hrs post-transfection, doxorubicin treatment was initiated using 0, 300, or 500ng/ml. 24hrs post-treatment, RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s. All constructs are shown below.
Analysis
Two experimental (technical) replicates were included in each QPCR run and delta ct was calculated for each sample using the mean of the gene of interest’s technical replicates and the house keeping gene’s technical replicates. delta-delta ct was calculated for each sample by subtracting the dct value for the corresponding shControl samples at treatment concentration 0. Three independant experiments (biological replicates) were performed in total. The Student’s t-test was used to compare the shControl vs shRenilla group’s delta-delta ct values.
Constructs
p1 <- data.frame(
name="p1",
sequence="GCG CCC TGC CTG GCC CCC ACC TGG TCC TCT TTC CTT TTC AGG TGG AGG AGA TGC CGC TGT
CCC GTC GGT CTG GGG ACA GCC CAG CTC CCC GGA TCC CGG GCT GGA GAG ACG CGT CGC GGC
CCC GGG GCC TGG TGG CAC GAG CAG GAA GGA GGA CCC GGC GGC GGG CTC TGC CTG GGC TTG
CCT GGG CTT GTT CCG AGC CGG GCT GCT TCT CGG TGA CCA CGC AGA TCG GGG GCA TTT GGA
GAT TTT GCG GGA GTC CTG CAG CCA AGC TCC GGG GCA GGA GAG GCC TGG AAG CCT GCA CTA
CCT GCT C"
)
p1
| name | sequence |
|---|---|
| p1 | GCG CCC TGC CTG GCC CCC ACC TGG TCC TCT TTC CTT TTC AGG TGG AGG AGA TGC CGC TGT |
| CCC GTC GGT CTG GGG ACA GCC CAG CTC CCC GGA TCC CGG GCT GGA GAG ACG CGT CGC GGC | |
| CCC GGG GCC TGG TGG CAC GAG CAG GAA GGA GGA CCC GGC GGC GGG CTC TGC CTG GGC TTG | |
| CCT GGG CTT GTT CCG AGC CGG GCT GCT TCT CGG TGA CCA CGC AGA TCG GGG GCA TTT GGA | |
| GAT TTT GCG GGA GTC CTG CAG CCA AGC TCC GGG GCA GGA GAG GCC TGG AAG CCT GCA CTA | |
| CCT GCT C |
shRNAs
shRNAs <- data.frame(
name=c(
"shRenilla2.1"
),
sequence=c(
"TAA CGG GAT TTC ACG AGG C"
)
)
shRNAs
| name | sequence |
|---|---|
| shRenilla2.1 | TAA CGG GAT TTC ACG AGG C |
Primers
primers <- data.frame(
name=c(
"Luc_set_II_F",
"Luc_set_II_R",
"Renilla_pBiDir_F1",
"Renilla_pBiDir_R1",
"B-actin_F",
"B-actin_R"
),
sequence=c(
"AAG ATT CAA AGT GCG CTG CTG",
"TTG CCT GAT ACC TGG CAG ATG",
"TAA CGC GGC CTC TTC TTA TTT",
"GAT TTG CCT GAT TTG CCC ATA",
"AGG TCA TCA CCA TTG GCA ATG AG",
"CTT TGC GGA TGT CCA CGT CA"
)
)
primers
| name | sequence |
|---|---|
| Luc_set_II_F | AAG ATT CAA AGT GCG CTG CTG |
| Luc_set_II_R | TTG CCT GAT ACC TGG CAG ATG |
| Renilla_pBiDir_F1 | TAA CGC GGC CTC TTC TTA TTT |
| Renilla_pBiDir_R1 | GAT TTG CCT GAT TTG CCC ATA |
| B-actin_F | AGG TCA TCA CCA TTG GCA ATG AG |
| B-actin_R | CTT TGC GGA TGT CCA CGT CA |
See Figure 2c for a schematic representation of the P1 construct.
url <- "figure2e_P1shRNAdox.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#Luciferase = miR34a HG
#Renilla = miR34a AS
#calculate dct
groups <- c("treatment", "Biological Replicate", "shRNA", "gene")
gois <- c("Luciferase", "Renilla")
data <- data %>%
technicalMeans(., groups) %>%
dct(., gois, Actin, groups)
#calculate ddct
groups[groups == "gene"] <- "GOI"
logical <- tibble(
`shRNA` = pull(data, shRNA) == "shRNA Control",
treatment = pull(data, treatment) == 0
)
data <- data %>%
ddct(., logical, groups, med = FALSE) %>%
folds(.)
#calculate stats
stats <- calcStats(data, shRNA, "shRNA Control", groups) %>%
pFormat(.)
#prepare for plotting
data <- data %>%
mutate(plotGOI = case_when(
GOI == "Luciferase" ~ " Luciferase\n(miR34a HG)",
GOI == "Renilla" ~ " Renilla\n(miR34a asRNA)"
))
stats <- stats %>%
mutate(plotGOI = case_when(
GOI == "Luciferase" ~ " Luciferase\n(miR34a HG)",
GOI == "Renilla" ~ " Renilla\n(miR34a asRNA)"
))
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = treatment,
y = log2fold,
group = interaction(plotGOI, treatment)
),
trim = TRUE,
scale = "width",
alpha = 0.3,
colour = NA,
fill = "gray",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = treatment,
y = log2fold,
fill = plotGOI
),
binwidth = 1/10,
alpha = 0.5,
colour = NA,
position = position_dodge(width = 0.9),
binaxis = 'y',
stackdir = 'center',
dotsize = 2,
show.legend = TRUE
) +
facet_grid(. ~ shRNA, scale = "free") +
geom_linerange(
data = stats,
aes(
x = treatment,
ymin = CI95l,
ymax = CI95h,
group = plotGOI
),
colour = "gray20",
position = position_dodge(width = 0.9),
show.legend = FALSE
) +
geom_point(
data = stats,
aes(
x = treatment,
y = mean,
group = plotGOI
),
colour = "gray20",
position = position_dodge(width = 0.9),
shape = 95,
size = 6,
show.legend = FALSE
) +
geom_label(
data = stats,
aes(
x = treatment,
y = CI95h + 0.2,
label = pFormat,
group = plotGOI
),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
position = position_dodge(width = 0.9),
fill = "white",
size = 5,
family = "Arial Unicode MS"
) +
scale_y_continuous("\u0394\u0394Ct") +
labs(
x = "Doxorubicin (ng/ml)",
title = "HCT116"
) +
guides(
fill = guide_legend(title = "Gene", override.aes = list(size = 6))
)
plotRmarkdown(p)
HCT116 cells were co-transfected with the p1 construct and shRNA renilla or shRNA control and subsequently treated with increasing doses of doxorubicin. 24 hours post-treatment, cells were harvested and renilla and luciferase levels were measured using QPCR. Statistical testing compared the shRNA control with shRNA renilla transfected cells using the respective treatment condition. The points represent the values obtained from each independant experiment (n = 3) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown.
Levels of luciferase were abrogated in the shRenilla-transfected cells compared to control shRNA-transfected cells. Collectively, these results indicate that miR34a asRNA positively regulates levels of miR34a HG and is crucial for a proper miR34a response to apoptotic stimuli.
We hypothesized that miR34a asRNA may function to mediate the levels of its sense gene, miR34a. To this end, we stably over-expressed miR34a asRNA, using lentiviral transduction, in 3 different p53-null cell lines and monitored the effects on miR34a.
miR34a asRNA cloning
RNA was harvested from U2OS cells using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. PCR was run using the miR34aAS_cloning_F4 and miR34aAS_cloning_Ex3_1 primers for 40 cycles at annealing temperature 58ËšC and run on an agarose gel. Bands were excised and extracted using the QIAquick gel extraction kit (Qiagen). PCR products were cloned using the Strata Clone kit (Aligent) and sequenced (results below). The insert for the lentiviral construct (p-HIV-I2AG-U6) was subsequently sub-cloned from the sequenced plasmid using primers with PacI and NheI cleavage sites. The cloned transcript largley mirrors the GENCODE annotated transcript.
Cloning primers
primers <- data.frame(
name=c(
"miR34aAS_cloning_F4",
"miR34aAS_cloning_Ex3_1"
),
sequence=c(
"ACGCGTCTCTCCAGCCCGGGAT",
"AATGATGGCCGCAACTAATGACGG"
)
)
primers
| name | sequence |
|---|---|
| miR34aAS_cloning_F4 | ACGCGTCTCTCCAGCCCGGGAT |
| miR34aAS_cloning_Ex3_1 | AATGATGGCCGCAACTAATGACGG |
Sequencing results
construct <- data.frame(
name="miR34a_asRNA",
sequence="ACG CGT CTC TCC AGC CCG GGA TCC GGG GAG CTG GGC TGT CCC CAG ACC GAC GGG ACA GCG GCA
TCT CCT CCA CCT GAA AAG GAA AGA GGA CCA GTT TGC AGG ACT CCG AAC TGG GCC CGC GAG ATC
TCC ACC TGC GCA AAA CGA AAG GGC GGA TTC TCC TTG GAC TCA CGA GGC AAC CGC TCC CCG GGG
TGA GAA CGG GGG ACT CAT TCC TCC GGC ACT GGG AGA AGA CGA TTC TTC AGG AGG AGG ACA GGG
AAG CGA ATG CTA CCC AGA TGT CTC AGT ATA CTG GCT CGC GGC ACA TCG GGC AAA TGA ACC TAT
CAG ATA ACA ACG GCA GAT CAG ATG CCT GAG CAT TCA GAA GCA ACA GCT GTG GAG CCC CCG TGG
GTT CAG AAG GCC TGG TTC CCG TCT CCA GAA GCC TGG CTC TCC TCC CTC CTG GGC CCA CTA CTT
TGG CTT CTT GTT CCT ACG TAC AAG GAG TTG CGA AGA AGG CAA CTC TTC CCC TCC CTG AAG CCA
AAG GAA TGA AAC AGA CTA GGG CGG GAG AGG TGG CCA TCC GTC ATT AGT TGC GGC CAT CA"
)
construct
| name | sequence |
|---|---|
| miR34a_asRNA | ACG CGT CTC TCC AGC CCG GGA TCC GGG GAG CTG GGC TGT CCC CAG ACC GAC GGG ACA GCG GCA |
| TCT CCT CCA CCT GAA AAG GAA AGA GGA CCA GTT TGC AGG ACT CCG AAC TGG GCC CGC GAG ATC | |
| TCC ACC TGC GCA AAA CGA AAG GGC GGA TTC TCC TTG GAC TCA CGA GGC AAC CGC TCC CCG GGG | |
| TGA GAA CGG GGG ACT CAT TCC TCC GGC ACT GGG AGA AGA CGA TTC TTC AGG AGG AGG ACA GGG | |
| AAG CGA ATG CTA CCC AGA TGT CTC AGT ATA CTG GCT CGC GGC ACA TCG GGC AAA TGA ACC TAT | |
| CAG ATA ACA ACG GCA GAT CAG ATG CCT GAG CAT TCA GAA GCA ACA GCT GTG GAG CCC CCG TGG | |
| GTT CAG AAG GCC TGG TTC CCG TCT CCA GAA GCC TGG CTC TCC TCC CTC CTG GGC CCA CTA CTT | |
| TGG CTT CTT GTT CCT ACG TAC AAG GAG TTG CGA AGA AGG CAA CTC TTC CCC TCC CTG AAG CCA | |
| AAG GAA TGA AAC AGA CTA GGG CGG GAG AGG TGG CCA TCC GTC ATT AGT TGC GGC CAT CA |
Lentivirus production and infection
HEK293T cells were transfected with viral and expression constructs using Lipofectamine 2000 (Life Technologies), after which viral supernatants were harvested 48 and 72 hours post-transfection. Viral particles were concentrated using PEG-IT solution (Systems Biosciences) according to the manufacturer’s recommendations. HEK293T cells were used for virus titration and GFP expression was evaluated 72hrs post-infection via flow cytometry after which TU/ml was calculated. Cell lines were subsequently infected with the lentiviral particals using a multuplicity of infection = 1. After 48 hours, cells were placed under mycophenolic acid selection and the selection process was monitored using GFP expression via flow cytometry. When GFP expression was present in >90% of the cells, cells were frozen for downstream analysis.
QPCR
RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s. QPCR for miRNA expression analysis was performed according to the protocol for the TaqMan microRNA Assay kit (Life Technologies) with primer/probe sets purchased from the same company (TaqMan® MicroRNA Assay, hsa-miR-34a, human and Control miRNA Assay, RNU48, human) and the same cycling scheme as above. QPCR primers are shown below.
Analysis
Two experimental (technical) replicates were included in each QPCR run and delta ct was calculated for each sample using the mean of the gene of interest’s technical replicates and the house keeping gene’s technical replicates. delta-delta ct was calculated for each sample by subtracting the median dct value for the corresponding mock samples. At least three independant experiments (biological replicates) were performed in total (see more below). The Student’s t-test was used to compare the mock vs miR34a asRNA overexpressing group’s delta-delta ct values for both genes.
The sample numbers for each group are as follows:
n <- data.frame(
name = c(
"PC3 mock",
"PC3 miR34a asRNA",
"Skov3 mock",
"Skov3 miR34a asRNA",
"Saos2 mock",
"Saos2 miR34a asRNA"
),
n = c(3, 5, 4, 4, 5, 5)
)
n
| name | n |
|---|---|
| PC3 mock | 3 |
| PC3 miR34a asRNA | 5 |
| Skov3 mock | 4 |
| Skov3 miR34a asRNA | 4 |
| Saos2 mock | 5 |
| Saos2 miR34a asRNA | 5 |
QPCR primers
primers <- data.frame(
name=c(
"ß-actin Fwd",
"ß-actin Rev",
"miR34a_asF1",
"miR34a_asR1"
),
sequence=c(
"AGGTCATCACCATTGGCAATGAG",
"CTTTCGGGATGTCCACGTCA",
"AGCGGCATCTCCTCCACCTGAAA",
"TTGCCTCGTGAGTCCAAGGAGAAT"
)
)
primers
| name | sequence |
|---|---|
| ß-actin Fwd | AGGTCATCACCATTGGCAATGAG |
| ß-actin Rev | CTTTCGGGATGTCCACGTCA |
| miR34a_asF1 | AGCGGCATCTCCTCCACCTGAAA |
| miR34a_asR1 | TTGCCTCGTGAGTCCAAGGAGAAT |
url <- "figure3a_stableLineExpression.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#remove Skov exp 1 due to variability in technical replicates
data <- filter(data, `Biological Replicate` != 1 | `Cell line` != "Skov3")
#Have to divide the analysis due to the presence of several house
#keeping genes.
gois1 <- c("miR34a asRNA", "Actin")
gois2 <- c("miR34a", "RNU48")
data1 <- filter(data, gene %in% gois1)
data2 <- filter(data, gene %in% gois2)
#calculate dct
groups <- c("Genetic mod", "Biological Replicate", "Cell line", "gene")
data1 <- data1 %>%
technicalMeans(., groups) %>%
dct(., gois1, Actin, groups) %>%
mutate(GOI = as.character(GOI))
data2 <- data2 %>%
technicalMeans(., groups) %>%
dct(., gois2, RNU48, groups) %>%
mutate(GOI = as.character(GOI))
data <- bind_rows(data1, data2) %>%
mutate(GOI = parse_factor(GOI, levels = c("miR34a asRNA", "miR34a")))
#calculate ddct
groups[groups == "gene"] <- "GOI"
logical <- tibble(
`Biological Replicate` = pull(data, `Biological Replicate`) == 2,
`Genetic mod` = pull(data, `Genetic mod`) == "mock"
)
data <- data %>%
ddct(., logical, groups) %>%
folds(.)
#calculate stats
stats <- calcStats(data, `Genetic mod`, "mock", groups) %>%
pFormat(.)
#format for plotting
lev <- c("PC3\nmock", "PC3\nmiR34a asRNA", "Skov3\nmock", "Skov3\nmiR34a asRNA", "Saos2\nmock", "Saos2\nmiR34a asRNA")
data <- data %>%
mutate(Condition = paste(`Cell line`, `Genetic mod`, sep = "\n")) %>%
mutate(Condition = parse_factor(Condition, levels = lev))
stats <- stats %>%
mutate(Condition = paste(`Cell line`, `Genetic mod`, sep = "\n")) %>%
mutate(Condition = parse_factor(Condition, levels = lev))
#vertical lines and labels in plot
ys <- stats %>%
group_by(`Cell line`) %>%
summarize(max = max(CI95h))
vl <- stats %>%
group_by(`Cell line`, GOI) %>%
summarize(
pValue = as.numeric(min(pValue))
) %>%
ungroup() %>%
pFormat(.) %>%
mutate(
x = case_when(
GOI == "miR34a" ~ 1 + 0.25,
GOI == "miR34a asRNA" ~ 1 - 0.25
),
xend = case_when(
GOI == "miR34a" ~ 2 + 0.25,
GOI == "miR34a asRNA" ~ 2 - 0.25
)
) %>%
inner_join(ys) %>%
mutate(
max = max + c(0.25, 1, 0.25, 1, 0.25, 1)
)
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = Condition,
y = log2fold,
group = interaction(Condition, GOI)
),
trim = TRUE,
alpha = 0.5,
fill = "grey",
colour = NA,
scale = "width",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = Condition,
y = log2fold,
fill = GOI,
group = interaction(Condition, GOI)
),
binwidth = 1/10,
colour = NA,
alpha = 0.5,
position = position_dodge(width = 0.9),
binaxis = 'y',
stackdir = 'center',
dotsize = 4,
show.legend = TRUE
) +
facet_grid(
. ~ `Cell line`,
scales = "free",
space = "free"
) +
geom_linerange(
data = stats,
aes(
x = Condition,
ymin = CI95l,
ymax = CI95h,
group = interaction(Condition, GOI)
),
position = position_dodge(width = 0.9),
colour = "gray20",
show.legend = FALSE
) +
geom_point(
data = stats,
aes(
x = Condition,
y = mean,
group = interaction(Condition, GOI)
),
colour = "gray20",
shape = 95,
size = 6,
position = position_dodge(width = 0.9),
show.legend = FALSE
) +
geom_label(
data = vl,
aes(
x = 1.5,
y = max + 0.25,
label = pFormat,
group = interaction(`Cell line`, GOI)
),
fill = "white",
label.size = 0,
label.padding = unit(0.01, "lines"),
position = position_dodge(width = 0.9),
show.legend = FALSE,
fontface = "bold",
family = "Arial Unicode MS",
size = 3
) +
geom_segment(
data = vl,
aes(
x = x,
y = max,
xend = xend,
yend = max
),
colour = "grey43",
show.legend = FALSE
) +
scale_y_continuous("\u0394\u0394Ct")+
labs(
x = "Cell line",
title = "miR34a asRNA over-expressing cell lines"
) +
guides(
fill = guide_legend(title = "Gene", override.aes = list(size = 6))
)
plotRmarkdown(p)
miR34a asRNA and miR34a levels in PC3, Skov3, and Saos2 cell lines stably over-expressing miR34a asRNA compared to mock over-expressing control. The points represent the values obtained from each independant experiment (n >= 3) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
miR34a asRNA over-expression causes a concominant up-regulation of miR34a in all 3 cell lines. This indicates that miR34a asRNA concordantly regulates miR34a.
miR34a asRNA over-expressing cell lines, previously generated, showed a high overexpression level of miR34a asRNA despite a low multiplicity of infection. This is most likley due to the fact that all infected cell lines have practically no endogenous miR34a asRNA expression. To investigate the physiological relevance of the over-expression the miR34a asRNA levels were compared to the expression levels in HEK293t cells, which have a high endogenous miR34a expression level.
miR34a asRNA cloning
RNA was harvested from U2OS cells using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. PCR was run using the miR34aAS_cloning_F4 and miR34aAS_cloning_Ex3_1 primers for 40 cycles at annealing temperature 58ËšC and run on an agarose gel. Bands were excised and extracted using the QIAquick gel extraction kit (Qiagen). PCR products were cloned using the Strata Clone kit (Aligent) and sequenced (results below). The insert for the lentiviral construct (p-HIV-I2AG-U6) was subsequently sub-cloned from the sequenced plasmid using primers with PacI and NheI cleavage sites. The cloned transcript largley mirrors the GENCODE annotated transcript.
Cloning primers
primers <- data.frame(
name=c(
"miR34aAS_cloning_F4",
"miR34aAS_cloning_Ex3_1"
),
sequence=c(
"ACGCGTCTCTCCAGCCCGGGAT",
"AATGATGGCCGCAACTAATGACGG"
)
)
primers
| name | sequence |
|---|---|
| miR34aAS_cloning_F4 | ACGCGTCTCTCCAGCCCGGGAT |
| miR34aAS_cloning_Ex3_1 | AATGATGGCCGCAACTAATGACGG |
Sequencing results
construct <- data.frame(
name="miR34a_asRNA",
sequence="ACG CGT CTC TCC AGC CCG GGA TCC GGG GAG CTG GGC TGT CCC CAG ACC GAC GGG ACA GCG GCA
TCT CCT CCA CCT GAA AAG GAA AGA GGA CCA GTT TGC AGG ACT CCG AAC TGG GCC CGC GAG ATC
TCC ACC TGC GCA AAA CGA AAG GGC GGA TTC TCC TTG GAC TCA CGA GGC AAC CGC TCC CCG GGG
TGA GAA CGG GGG ACT CAT TCC TCC GGC ACT GGG AGA AGA CGA TTC TTC AGG AGG AGG ACA GGG
AAG CGA ATG CTA CCC AGA TGT CTC AGT ATA CTG GCT CGC GGC ACA TCG GGC AAA TGA ACC TAT
CAG ATA ACA ACG GCA GAT CAG ATG CCT GAG CAT TCA GAA GCA ACA GCT GTG GAG CCC CCG TGG
GTT CAG AAG GCC TGG TTC CCG TCT CCA GAA GCC TGG CTC TCC TCC CTC CTG GGC CCA CTA CTT
TGG CTT CTT GTT CCT ACG TAC AAG GAG TTG CGA AGA AGG CAA CTC TTC CCC TCC CTG AAG CCA
AAG GAA TGA AAC AGA CTA GGG CGG GAG AGG TGG CCA TCC GTC ATT AGT TGC GGC CAT CA"
)
construct
| name | sequence |
|---|---|
| miR34a_asRNA | ACG CGT CTC TCC AGC CCG GGA TCC GGG GAG CTG GGC TGT CCC CAG ACC GAC GGG ACA GCG GCA |
| TCT CCT CCA CCT GAA AAG GAA AGA GGA CCA GTT TGC AGG ACT CCG AAC TGG GCC CGC GAG ATC | |
| TCC ACC TGC GCA AAA CGA AAG GGC GGA TTC TCC TTG GAC TCA CGA GGC AAC CGC TCC CCG GGG | |
| TGA GAA CGG GGG ACT CAT TCC TCC GGC ACT GGG AGA AGA CGA TTC TTC AGG AGG AGG ACA GGG | |
| AAG CGA ATG CTA CCC AGA TGT CTC AGT ATA CTG GCT CGC GGC ACA TCG GGC AAA TGA ACC TAT | |
| CAG ATA ACA ACG GCA GAT CAG ATG CCT GAG CAT TCA GAA GCA ACA GCT GTG GAG CCC CCG TGG | |
| GTT CAG AAG GCC TGG TTC CCG TCT CCA GAA GCC TGG CTC TCC TCC CTC CTG GGC CCA CTA CTT | |
| TGG CTT CTT GTT CCT ACG TAC AAG GAG TTG CGA AGA AGG CAA CTC TTC CCC TCC CTG AAG CCA | |
| AAG GAA TGA AAC AGA CTA GGG CGG GAG AGG TGG CCA TCC GTC ATT AGT TGC GGC CAT CA |
Lentivirus production and infection
HEK293T cells were transfected with viral and expression constructs using Lipofectamine 2000 (Life Technologies), after which viral supernatants were harvested 48 and 72 hours post-transfection. Viral particles were concentrated using PEG-IT solution (Systems Biosciences) according to the manufacturer’s recommendations. HEK293T cells were used for virus titration and GFP expression was evaluated 72hrs post-infection via flow cytometry after which TU/ml was calculated. Cell lines were subsequently infected with the lentiviral particals using a multuplicity of infection = 1. After 48 hours, cells were placed under mycophenolic acid selection and the selection process was monitored using GFP expression via flow cytometry. When GFP expression was present in >90% of the cells, cells were frozen for downstream analysis.
QPCR
RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s. QPCR for miRNA expression analysis was performed according to the protocol for the TaqMan microRNA Assay kit (Life Technologies) with primer/probe sets purchased from the same company (TaqMan® MicroRNA Assay, hsa-miR-34a, human and Control miRNA Assay, RNU48, human) and the same cycling scheme as above.
Analysis
Two experimental (technical) replicates were included in each QPCR run and delta ct was calculated for each sample using the mean of the gene of interest’s technical replicates and the house keeping gene’s technical replicates. Delta-delta ct was calculated for each sample by subtracting the median dct value for the corresponding untreated samples. Five independant experiments were performed in total for all cell lines with the exception of PC3. Six independant experiments were preformed for the PC3 cell lines although, one experiment was removed due to excessivley high ct values (>30) in the house keeping gene, indicating an insufficient amount of RNA to sucessfully detect the genes of interest.
Primers
primers <- data.frame(
name=c(
"ß-actin Fwd",
"ß-actin Rev",
"miR34a_asF1",
"miR34a_asR1"
),
sequence=c(
"AGGTCATCACCATTGGCAATGAG",
"CTTTCGGGATGTCCACGTCA",
"AGCGGCATCTCCTCCACCTGAAA",
"TTGCCTCGTGAGTCCAAGGAGAAT"
)
)
primers
| name | sequence |
|---|---|
| ß-actin Fwd | AGGTCATCACCATTGGCAATGAG |
| ß-actin Rev | CTTTCGGGATGTCCACGTCA |
| miR34a_asF1 | AGCGGCATCTCCTCCACCTGAAA |
| miR34a_asR1 | TTGCCTCGTGAGTCCAAGGAGAAT |
url <- "suppFigure2a_stableLineExpressionHEK.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#remove PC3 experiment 6, B-act mean Ct > 30, too high.
data <- filter(data, `Biological Replicate` != 6 | `Cell line` != "PC3")
#calculate dct
groups <- c("Condition", "Biological Replicate", "Cell line", "gene")
gois <- c("miR34a asRNA")
data <- technicalMeans(data, groups) %>%
dct(., gois, Actin, groups)
#calculate ddct
groups[groups == "gene"] <- "GOI"
logical <- tibble(
`Cell line` = data$`Cell line` == "HEK293t",
Condition = data$Condition == "wt"
)
data <- data %>%
ddct(., logical, groups) %>%
folds(.)
#calculate stats
stats <- data %>%
group_by(`Cell line`, Condition) %>%
summarize(
n = n(),
mean = mean(log2fold),
CI95l = t.test(log2fold)$conf.int[1],
CI95h = t.test(log2fold)$conf.int[2]
)
p <- ggplot(data = NULL)+
geom_violin(
data = data,
aes(
x = Condition,
y = log2fold
),
scale = "width",
trim = TRUE,
alpha = 0.3,
color = NA,
fill = "gray",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = Condition,
y = log2fold,
fill = Condition
),
colour = NA,
binwidth = 1/10,
alpha = 0.5,
position = position_dodge(width = 0.9),
binaxis='y',
stackdir='center',
dotsize = 4,
show.legend = TRUE
) +
facet_grid(. ~ `Cell line`, scales = "free") +
geom_point(
data = stats,
aes(
x = Condition,
y = mean
),
colour = "grey20",
show.legend = FALSE,
shape = 95,
size = 6
) +
geom_linerange(
data = stats,
aes(
x = Condition,
ymin = CI95l,
ymax = CI95h
),
colour = "gray20",
show.legend = FALSE
) +
labs(
x = "Cell line",
y = "log2(Fold)",
title = "miR34a asRNA"
) +
guides(fill = FALSE)
plotRmarkdown(p)
miR34a asRNA over-expression levels in PC3, Skov3, and Saos2 stable cell lines compared to HEK293t cells. The points represent the values obtained from each independant experiment (n = 5) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines) and mean (horizontal black lines) are shown.
Results indicate that miR34a asRNA is over-expressed 13-22 fold greater that endogenous HEK293t levels.
miR34a is known to regulate cell cycle and, specifically, induce G1-phase arrest. Due to the increase observed in miR34a expression levels in cell lines over-expressing miR34a asRNA, we investigated if the cell cycle was perturbed in these cells.
Cell culture and cell cycle analysis
All cell lines were cultured at 5% CO2 and 37° C with Skov3 and PC3 cells in RPMI (Hyclone) and 2 mM L-glutamine. All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. 1x10^5 cells per well in a 6-well plate and harvested after 24hrs. Cells were washed in PBS and fixed in 4% PFA at room temperature overnight. PFA was removed, and cells were resuspended in 95% EtOH. The samples were then rehydrated in distilled water, stained with DAPI and analyzed by flow cytometry on a LSRII (BD Biosciences) machine.
Analysis Write the software used to quantify the cell cycle phases.
Percentages were converted to log2 fractions for each sample. Student’s t-test was used for statistical analysis comparing the mock vs miR34a asRNA overespression conditions using five (PC3) or three (Skov3) independant experiments.
url <- "figure3b_stableLineCellCycle.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#convert the value (precent) to log2(fraction)
data <- mutate(data, value = log2(value / 100))
#qqplot shows that the data is reasonably normal. The shapiro test is also used below. Note that a p < 0.05 indicates non-normality.
#qqnorm(data$value)
#calculate stats
stats <- data %>%
full_join(
filter(data, condition == "mock"),
by = c("Biological Replicate", "Cell line", "phase"),
suffix = c("", ".y")
) %>%
group_by(`Cell line`, condition, phase) %>%
summarize(
n = n(),
mean = (2^mean(.data$value)),
max = (2^max(.data$value)),
CI95l = (2^t.test(.data$value)$conf.int[1]),
CI95h = (2^t.test(.data$value)$conf.int[2]),
pValue = t.test(.data$value, .data$value.y)$p.value,
shapiroTest = shapiro.test(value)$p.value
) %>%
ungroup() %>%
pFormat(.)
#prepare for plotting
#change value back to percent
data <- data %>%
mutate(value = 2^value)
#calculate start and end for horizontal plot lines
stats <- stats %>%
group_by(phase, `Cell line`) %>%
mutate(y = max(c(.data$CI95h, .data$max))) %>%
ungroup() %>%
arrange(`Cell line`, phase) %>%
mutate(
x = rep(sort(rep(1:3, 2)), 2) - 0.25,
xend = rep(sort(rep(1:3, 2)), 2) + 0.25
)
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = phase,
y = value,
group = interaction(phase, condition)
),
scale = "width",
alpha = 0.3,
fill = "gray",
weight = 10,
trim = TRUE,
color = NA,
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = phase,
y = value,
fill = condition
),
binwidth = 1/100,
colour = NA,
alpha = 0.5,
position = position_dodge(width = 0.9),
binaxis = 'y',
stackdir = 'center',
dotsize = 0.5,
show.legend = TRUE
) +
facet_grid(
. ~ `Cell line`,
scale = "free"
) +
geom_linerange(
data = stats,
aes(
x = phase,
ymin = CI95l,
ymax = CI95h,
group = interaction(phase, condition)
),
position = position_dodge(width = 0.9),
colour = "grey25",
show.legend = FALSE
) +
geom_point(
data = stats,
aes(
x = phase,
y = mean,
group = condition
),
colour = "black",
position = position_dodge(width = 0.9),
shape = 95,
size = 6,
show.legend = FALSE
) +
geom_segment(
data = stats,
aes(
x = x,
y = y + 0.01,
xend = xend,
yend = y + 0.01
),
colour = "grey43",
show.legend = FALSE
) +
geom_label(
data = stats,
aes(
x = phase,
y = y + 0.02,
label = pFormat
),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
fill = "white",
size = 3,
family = "Arial Unicode MS"
) +
scale_y_continuous(labels = scales::percent_format()) +
labs(
x = "Cell cycle phase",
y = "",
title = "Cell cycle"
) +
guides(
fill = guide_legend(title = "Condition", override.aes = list(size = 6))
)
plotRmarkdown(p)
Cell cycle analysis in miR34a asRNA over-expressing PC3, Skov3, and Saos2 stable cell lines compared to their respective mock control. The points represent the values obtained from each independant experiment (PC3 n = 5; Skov3 n = 3) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
An increase in the percentage of cells in G1-phase can be seen in cell lines overexpressing miR34a asRNA. In addition, a concominant decrease of cells in G2-phase can be observed.
As p53 is a well-known regulator of senescence, growth, and apoptosis and has been shown to specifically important under conditions of cellular stress, such as starvation. Therefore, we investigated whether overexpression of miR34a AS affects growth rate under normal and starvation conditions by measuring changes in confluency over time.
Cell culture and confluency quantification
10^4 PC3 cells, either miR34a asRNA overexpressing or WT, were seeded in 96 well plates. After attachment (3-4h) media was replaced with either RPMI (Gibco, life technology) (supplemented with 2mM L-glutamine, 50ug/ml Penicillin-Streptomycin and 10% Fetal Calf Serum) or HBSS. Cells were incubated in Spark Multimode Microplate reader for 48 hours at 37°C with 5% CO2 in a humidity chamber. Confluency was measured every hour.
Analysis
Three technical triplicates were included in each experiment and these were independantly normalized for each condition to the 0 time point afterwhich the mean was calculated. The 95% confidence interval was then calculated based on the three independant experiments which were preformed.
url <- "figure3c_stableLineGrowthStarvation.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#normalize to first time point for control (Mock)
.normFun <- function(
data,
Confluency,
Treatment,
Biological.Replicate,
Technical.Replicate,
Cell.line
){
bool1 <- data$Treatment == Treatment
bool2 <- data$`Biological Replicate` == Biological.Replicate
bool3 <- data$`Technical Replicate` == Technical.Replicate
bool4 <- data$Time == 0
bool5 <- data$`Cell line` == Cell.line
bool <- bool1 & bool2 & bool3 & bool4 & bool5
Confluency / pull(data, Confluency)[bool]
}
data <- data %>%
group_by(Treatment, `Biological Replicate`, `Technical Replicate`, Time, `Cell line`) %>%
mutate(
normConfluency = .normFun(
data,
Confluency,
Treatment,
`Biological Replicate`,
`Technical Replicate`,
`Cell line`
)
) %>%
ungroup()
#calculate mean for each technical replicate
data <- data %>%
group_by(Treatment, `Biological Replicate`, Time, `Cell line`) %>%
summarize(
techMean = mean(normConfluency)
) %>%
ungroup()
#calculate stats
stats <- data %>%
filter(Time != 0) %>%
group_by(`Cell line`, Treatment, Time) %>%
summarize(
min = min(techMean),
max = max(techMean),
mean = mean(techMean),
median = median(techMean),
CI95l = t.test(techMean)$conf.int[1],
CI95h = t.test(techMean)$conf.int[2]
)
p <- ggplot(data = NULL) +
geom_ribbon(
data = stats,
aes(
x = Time,
ymin = CI95l,
ymax = CI95h,
group = `Cell line`,
fill = `Cell line`
),
alpha = 0.2,
show.legend = FALSE
) +
geom_linerange(
data = stats,
aes(
x = Time,
colour = `Cell line`,
ymin = min,
ymax = max
),
position = position_dodge(width = 1),
show.legend = FALSE
) +
geom_point(
data = stats,
aes(
x = Time,
y = median,
group = `Cell line`,
colour = `Cell line`
),
position = position_dodge(width = 1),
show.legend = TRUE
) +
facet_grid(. ~ Treatment) +
scale_x_discrete(breaks = seq(0, 35, 5)) +
labs(
x = "Time (hours)",
y = "Normalized % confluency",
title = "miR34a asRNA's role in growth regulation."
) +
guides(
colour = guide_legend(title = "Cell line", override.aes = list(size = 3))
)
plotRmarkdown(p)
The effects of miR34a asRNA overexpression on growth in normal and starvation conditions in the PC3 prostate cancer cell line. The points represent the mean values obtained from each independant experiment (n = 3) whereas, the shadow represents 95% confidence interval, and the vertical line represents the minimum and maximum values from the independant experiments.
miR34a asRNA overexpression causes a minor decrease in cell growth under normal conditions (RPMI) although under conditions of cellular stress through starvation, this effect is increased dramatically.
miR34a asRNA over-expression was shown to increase the expression levels of miR34a. We investigated if this increase of miR34a was due to increased levels of transcription at the miR34a promoter.
Cell culture, QPCR, and ChIP
All cell lines were cultured at 5% CO2 and 37° C with Skov3 and PC3 cells in RPMI (Hyclone) and 2 mM L-glutamine and Saos2 cells cultured in DMEM high modified (Hyclone). All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. Cells were plated at 2-3x10^6 cells in a 15cm dish and incubated overnight. Cells were cross-linked in 1% formaldehyde, quenched in glycine (0.125M), resuspended in cell lysis buffer (5mM PIPES, 85mM KCL, 0.5% NP40, protease inhibitor), and sonicated (Bioruptor Sonicator Diagenode) in nucleus lysis buffer (50mM TRIS-HCL pH 8.0, 10mM EDTA, 1% SDS, protease inhibitor). The samples were incubated overnight at 4 °C with the appropriate antibody. Salmon sperm DNA/Protein A–agarose (Upstate/Millipore) was used to pull down the antibody. DNA was eluted in elution buffer (1% SDS, 100 mM NaHCO3), followed by reverse cross-linking, RNase-A and protease-K treatment. The DNA was eluted by using a Qiagen PCR purification kit. The following antibodies were used (4 μg/sample): phospho-polymerase II (abcam: ab5095). QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s.
Analysis
QPCR was performed in technical replicate for each sample and the mean of the technical replicates was subsequently used to calculate the fraction of input. The fold change of the miR34a asRNA overexpression samples was then calculated by dividing the values by the values for the corresponding mock samples. The fold values were then log2 transformed and the Student’s t-test was used to test for significant differences under the null hypothesis that the true mean value of log2 transformed fold changes were equal to 0.
Primers
primers <- data.frame(
name=c(
"miR34aChIP F1",
"miR34aChIP R1"
),
sequence=c(
"AAA GTT TGC AAA GAA GGA GGC GGG",
"AGG GAA GAA AGA ACT AGC CGA GCA"
)
)
primers
| name | sequence |
|---|---|
| miR34aChIP F1 | AAA GTT TGC AAA GAA GGA GGC GGG |
| miR34aChIP R1 | AGG GAA GAA AGA ACT AGC CGA GCA |
url <- "figure3d_stableLinePolIIChIP.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#calculate means of technical replicates
data <- mutate(data, techMean = rowMeans(select(data, Quantity1, Quantity2)))
#calculate fraction of input
.fractionOfInput <- function(data, techMean, Biological.Replicate, condition) {
bool1 <- data$`Biological Replicate` == Biological.Replicate
bool2 <- data$condition == condition
bool3 <- data$sample == "input"
bool <- bool1 & bool2 & bool3
techMean / pull(data, techMean)[bool]
}
data <- data %>%
group_by(`Biological Replicate`, condition, sample) %>%
mutate(fractionInput = .fractionOfInput(data, techMean, `Biological Replicate`, condition)) %>%
ungroup() %>%
filter(sample != "input")
#calculate fold over mock
.foldOverControl <- function(data, fractionInput, Biological.Replicate) {
bool1 <- data$`Biological Replicate` == 3
bool2 <- data$condition == "PC3 mock"
bool <- bool1 & bool2
fractionInput / pull(data, fractionInput)[bool]
}
data <- data %>%
mutate(
foldOverControl = .foldOverControl(data, fractionInput, `Biological Replicate`),
logfoldOverControl= log2(foldOverControl)
) %>%
ungroup()
#calculate stats
stats <- data %>%
group_by(condition) %>%
summarize(
n = n(),
mean = mean(logfoldOverControl),
CI95l =t.test(logfoldOverControl)$conf.int[1],
CI95h =t.test(logfoldOverControl)$conf.int[2],
pValue = t.test(logfoldOverControl, mu = 0)$p.value
) %>%
pFormat(.) %>%
mutate(pFormat = case_when(
condition == "PC3 mock" ~ "",
TRUE ~ pFormat
))
p <- ggplot(data = NULL)+
geom_violin(
data = data,
aes(
x = condition,
y = logfoldOverControl,
group = condition
),
trim = TRUE,
alpha = 0.3,
colour = NA,
fill = "gray",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = condition,
y = logfoldOverControl,
fill = condition
),
binwidth = 1/10,
alpha = 0.5,
colour = NA,
position = position_dodge(width = 0.9),
binaxis='y',
stackdir='center',
dotsize = 2,
show.legend = TRUE
) +
geom_linerange(
data = stats,
aes(x = condition, ymin = CI95l, ymax = CI95h),
colour = "gray20",
show.legend = FALSE
) +
geom_point(
data = stats,
aes(x = condition, y = mean),
colour = "gray20",
shape = 95,
size = 6,
show.legend = FALSE
) +
geom_segment(
data = filter(stats, condition == "PC3 miR34a asRNA"),
aes(x = 1, y = CI95h + 0.25, xend = 2, yend = CI95h + 0.25),
colour = "grey43"
) +
geom_label(
data = stats,
aes(x = 1.5, y = CI95h + 0.45, label = pFormat),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
fill = "white",
size = 5,
family = "Arial Unicode MS"
) +
scale_y_continuous("log2(Fold)") +
labs(
x = "Cell line",
y = "log2(Fold polII enrichment)",
title = "Phosphorylated Poll II ChIP"
) +
guides(fill = FALSE)
plotRmarkdown(p)
Phosphorylated Poll II ChIP in miR34a asRNA over-expressing PC3 stable cell lines compared to their respective mock control. The points represent the values obtained from each independant experiment (n = 4) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
Phosphorylated pol-II was increased at the miR34a promoter in miR34a asRNA over-expressing cell lines indicating that the regulation of miR34a by miR34a asRNA is transcriptional.
To further investigate the characteristics of the miR34a asRNA stable lines, we measured the expression level of known miR34a target cyclin D1. miR34a has been previously shown to inhibit cell cycle progression, partially via its regulation of cyclin D1.
Cell culture and QPCR
All cell lines were cultured at 5% CO2 and 37° C with PC3 cells in RPMI (Hyclone) and 2 mM L-glutamine. All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. Cells were seeded at 2x10^5 cells per well in a 12-well plate. After 24 hours, RNA was extracted using the RNeasy mini kit (Qiagen) and subsequently treated with DNase (Ambion Turbo DNA-free, Life Technologies). 500ng RNA was used for cDNA synthesis using MuMLV (Life Technologies) and a 1:1 mix of oligo(dT) and random nanomers. QPCR was carried out using KAPA 2G SYBRGreen (Kapa Biosystems) using the Applied Biosystems 7900HT machine with the cycling conditions: 95 °C for 3 min, 95 °C for 3 s, 60 °C for 30 s.
Analysis
Two technical replicates were included for each sample and each QPCR run. Delta ct was calculated by subtracting the mean of the technical replicates for each sample from the mean value for the technical replicates from the house keeping gene for the corresponding sample. Delta-delta ct was calculated for each sample by subtracting the median dct value for the corresponding mock samples. Six independant experiments (biological replicates) were performed in total. The Student’s t-test was used to compare the mock and miR34a asRNA overexpressing group’s delta-delta ct values with the null hypothesis that there was no difference in the two group’s means.
Primers
primers <- data.frame(
name=c(
"CCND1 Fwd",
"CCND1 Rev",
"B-actin_F",
"B-actin_R"
),
sequence=c(
"CGT GGC CTC TAA GAT GAA GG",
"CTG GCA TTT TGG AGA GGA AG",
"AGG TCA TCA CCA TTG GCA ATG AG",
"CTT TGC GGA TGT CCA CGT CA"
)
)
primers
| name | sequence |
|---|---|
| CCND1 Fwd | CGT GGC CTC TAA GAT GAA GG |
| CCND1 Rev | CTG GCA TTT TGG AGA GGA AG |
| B-actin_F | AGG TCA TCA CCA TTG GCA ATG AG |
| B-actin_R | CTT TGC GGA TGT CCA CGT CA |
url <- "suppFigure2b_stableLineCCND1exp.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#calculate dct
groups <- c("condition", "Biological Replicate", "Cell line", "gene")
gois <- c("CCND1")
data <- data %>%
technicalMeans(., groups) %>%
dct(., gois, Actin, groups, F)
#calculate ddct
groups[groups == "gene"] <- "GOI"
logical <- tibble(
condition = pull(data, condition) == "PC3 mock"
)
data <- data %>%
ddct(., logical, groups) %>%
folds(.)
#calculate stats
stats <- calcStats(data, condition, "PC3 mock", groups) %>%
pFormat(.)
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = condition,
y = log2fold
),
trim = TRUE,
alpha = 0.3,
color = NA,
fill = "gray",
scale = "width"
) +
geom_dotplot(
data = data,
aes(
x = condition,
y = log2fold,
fill = condition
),
binwidth = 1/200,
colour = NA,
alpha = 0.5,
position = position_dodge(width = 0.9),
binaxis = 'y',
stackdir = 'center',
dotsize = 4,
show.legend = TRUE
) +
geom_linerange(
data = stats,
aes(
x = condition,
ymin = CI95l,
ymax = CI95h
),
colour = "gray20"
) +
geom_point(
data = stats,
aes(
x = condition,
y = mean
),
colour = "gray20",
size = 6,
shape = 95
) +
geom_segment(
aes(
x = 1,
y = 0.175,
xend = 2,
yend = 0.175
),
colour = "grey43"
) +
geom_label(
data = stats,
aes(
x = 1.5,
y = 0.19,
label = pFormat
),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
fill = "white",
size = 5,
family = "Arial Unicode MS"
) +
scale_y_continuous("\u0394\u0394Ct") +
labs(
x = "Cell line",
title = "CCND1"
) +
guides(fill = FALSE)
plotRmarkdown(p)
Q-PCR showing cyclin D1 levels in PC3 miR34a asRNA over-expressing stable lines. The points represent the values obtained from each independant experiment (n = 6) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
CCND1 expression levels are decreased in PC3 cell lines stably over-expressing miR34a asRNA.
After observing decreased mRNA levels for the miR34a target CCND1, we were interested whether this has also consequences for its protein levels.
Cell culture and western blot All cell lines were cultured at 5% CO2 and 37° C with PC3 cells in RPMI (Hyclone) and 2 mM L-glutamine. All growth mediums were supplemented with 10% heat-inactivated FBS and 50 μg/ml of streptomycin and 50 μg/ml of penicillin. We seeded three independent experiments of 150,000 cells/well in a six well plate (PC3 mock vs. PC3 miR34a AS F4) and grew them for 24 hours. Before harvesting cells were controlled for their confluency. Cells with a confluence of 60-75%, were harvested using trypsin. Cell pellets were frozen down at -80°C before lysed for Western Blot analysis. Western Blot analysis was performed following Lottes’ protocol. Cells were lysed in RIPA Buffer and run on a 4-12% Bis-Tris-SDS Gel using MOPS running buffer. Proteins were transferred onto a nitrocellulose membrane using iBlot Turbo Blotting Device. Proteins were transferred for 7 minutes. Membranes were blocked for 1 hour at room temperature in 5% milk. Membranes were incubated with a cyclin D1 antibody (92G2 Rabbit mAb, Cell Signalling) overnight at 4°C. The membrane was incubated using a goat anti-rabbit antibody conjugated to HRP for 1 hour at room temperature. Membranes were washed 3-times for 5min each in TBS-T. Membranes were developed using chemiluminescence. After the picture was taken, the membrane was stripped using 0.4M NaOH solution for 20min. Blocking step was repeated and primary antibody against GAPDH was incubated for overnight at 4°C. Consequently, the membrane was incubated using a goat anti-rabbit antibody conjugated to HRP for 1 hour at room temperature. Membranes were washed 3-times for 5min in TBS-T. Membranes were developed using chemiluminescence.
Analysis
Resulting bands on the western blots were quantified using the ImageJ software with three parameters being measured, intensity, background, and pixel. The quantative value was derived for each band by first subtracting the background from the intensity and subsequently multiplying this value by the pixel value. The fraction of CCND1 over the house keeping gene was then calculated using each sample’s values and the corresponding house keeping genes values. Fold change was then calculated by dividing the normalized CCND1 values in the miR34a asRNA overexpressing samples by the median of the corresponding mock samples. Fold change values were subsequently log2 transformed and the Student’s t-test was utilized to compare mock vs. miR34a asRNA overexpressing samples using three independant experiments with the null hypothesis that the mean values were the same in each group.
Representative experiment
url <- "suppFigure2c_stableLineCCND1prot/singleExp.png"
knitr::include_graphics(file.path(projectUrl, url))
A resulting western blot representative of the results from the three independant experiments.
Quantification
url <- "suppFigure2c_stableLineCCND1prot.rds"
data <- read_rds(gzcon(url(file.path(dataUrl, url))))
#normalize to house keeping gene
data <- data %>%
mutate(value = (Intensity - background) * pixel) %>%
select(-pixel, -Intensity, -background) %>%
spread(protein, value) %>%
mutate(normHK = CCND1 / GAPDH)
#normalize to mock
cnt <- filter(data, condition == "PC3 mock") %>%
pull(normHK) %>%
median
data <- mutate(data, log2fold = log2(normHK / cnt))
#calculate stats
stats <- data %>%
group_by(condition) %>%
summarize(
n = n(),
mean = mean(log2fold),
CI95l = t.test(log2fold)$conf.int[1],
CI95h = t.test(log2fold)$conf.int[2],
pValue = t.test(log2fold, pull(filter(data, condition == "PC3 mock"), log2fold))$p.value
) %>%
pFormat(.)
p <- ggplot(data = NULL) +
geom_violin(
data = data,
aes(
x = condition,
y = log2fold
),
trim = TRUE,
alpha = 0.3,
color = NA,
fill = "gray",
scale = "width",
show.legend = FALSE
) +
geom_dotplot(
data = data,
aes(
x = condition,
y = log2fold,
fill = condition
),
binwidth = 1/30,
colour = NA,
alpha = 0.5,
position = position_dodge(width = 0.9),
binaxis = 'y',
stackdir = 'center',
dotsize = 4,
show.legend = TRUE
) +
geom_linerange(
data = stats,
aes(
x = condition,
ymin = CI95l,
ymax = CI95h
),
colour="gray20"
) +
geom_point(
data = stats,
aes(
x = condition,
y = mean
),
colour="gray20",
size = 6,
shape = 95
) +
geom_segment(
data = stats,
aes(
x = 1,
y = max(CI95h) + 0.25,
xend = 2,
yend = max(CI95h) + 0.25
),
colour="grey43"
) +
geom_label(
data = stats,
aes(
x = 1.5,
y = max(CI95h) + 0.5,
label = pFormat
),
label.size = 0,
label.padding = unit(0.01, "lines"),
show.legend = FALSE,
fill = "white",
size = 5,
family = "Arial Unicode MS"
) +
scale_y_continuous("log2(Fold)") +
labs(
x = "Cell line",
title = "CCND1 protein"
) +
guides(fill = FALSE)
plotRmarkdown(p)
Western blot quantification showing cyclin D1 protein levels in PC3 miR34a asRNA over-expressing stable lines compared to mock. The points represent the values obtained from each independant experiment (n = 3) whereas, the gray shadow represents the distribution of those points. 95% confidence interval (vertical black lines), mean (horizontal black lines), and p-values are shown with the horizontal line under the p-value indicating the comparison that was tested.
Cyclin D1 protein levels are significantly reduced in PC3 cells overexpressing miR34a asRNA, consistent with increased miR34a expression levels and the reduced G1 cell cycle phase observed in PC3 cells.
sessionInfo()
## R version 3.4.2 (2017-09-28)
## Platform: x86_64-apple-darwin15.6.0 (64-bit)
## Running under: macOS High Sierra 10.13.1
##
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib
##
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
##
## attached base packages:
## [1] grid stats graphics grDevices utils datasets methods
## [8] base
##
## other attached packages:
## [1] bindrcpp_0.2 gtable_0.2.0
## [3] miR34AasRNAproject_0.0.0.9000 ggthemes_3.4.0
## [5] printr_0.1 forcats_0.2.0
## [7] stringr_1.2.0 dplyr_0.7.4
## [9] purrr_0.2.4 readr_1.1.1.9000
## [11] tidyr_0.7.2 tibble_1.3.4
## [13] ggplot2_2.2.1 tidyverse_1.2.0
##
## loaded via a namespace (and not attached):
## [1] tidyselect_0.2.3 reshape2_1.4.2 haven_1.1.0 lattice_0.20-35
## [5] colorspace_1.3-2 htmltools_0.3.6 yaml_2.1.14 rlang_0.1.4
## [9] foreign_0.8-69 glue_1.2.0 modelr_0.1.1 readxl_1.0.0
## [13] bindr_0.1 plyr_1.8.4 munsell_0.4.3 cellranger_1.1.0
## [17] rvest_0.3.2 psych_1.7.8 evaluate_0.10.1 liftr_0.7
## [21] labeling_0.3 knitr_1.17 parallel_3.4.2 highr_0.6
## [25] broom_0.4.2 Rcpp_0.12.13 scales_0.5.0 backports_1.1.1
## [29] jsonlite_1.5 mnormt_1.5-5 hms_0.3 digest_0.6.12
## [33] stringi_1.1.5 rprojroot_1.2 cli_1.0.0 tools_3.4.2
## [37] magrittr_1.5 lazyeval_0.2.1 crayon_1.3.4 pkgconfig_2.0.1
## [41] xml2_1.1.1 lubridate_1.7.1 assertthat_0.2.0 rmarkdown_1.7
## [45] httr_1.3.1 rstudioapi_0.7 R6_2.2.2 nlme_3.1-131
## [49] compiler_3.4.2